from django.shortcuts import render, HttpResponse, redirect, HttpResponseRedirect
from django.http import JsonResponse

# Create your views here.
# 请求
def my_request(request):
    print(request)  # <WSGIRequest: GET '/request/'>

    # request的对象的属性和方式
    print(request.method)  # 请求方式
    print(request.GET)  # <QueryDict: {}> 类字典对象
    print('*' * 60)
    print(request.GET['name'])  # 如果name不存在，则报错
    print(request.GET.get('name', default='匿名用户'))  # 如果name不存在，不会报错， 而是返回None或默认值
    print(request.GET.getlist('name'))  # 如果name有多个值，则都会获取 以列表的形式返回
    print(request.POST)  # <QueryDict: {}> 类字典对象

    print(request.path)  # 路径
    print(request.get_full_path())  # 整个网址  /request/?name=zhangsan&name=lisi

    print(request.COOKIES)  # cookie会话技术
    print(request.session)  # session会话技术

    print(request.FILES)  # 文件对象， 前端上传的文件对象
    print(request.META['REMOTE_ADDR'])  # 客户端的IP地址

    return HttpResponse('ok!')


# 响应
def my_response(request):
    # # 1.返回字符串
    # return HttpResponse('ok!')
    #
    # # 2.返回模板： 前后端不分离的情况
    # return render(request, 'idnex.html')

    # # 3.重定向： 跳转页面
    # return redirect('/request/')
    # return HttpResponseRedirect('/request/')

    # # 4.返回JSON：前后端分离
    return JsonResponse({'data': "hello"})